package com.ymh.spring;

import java.text.NumberFormat;


/**
 * 
 * 名称：Client<br/>
 * 描述：建议4：避免带有变长参数的方法重载<br/>
 * 创建时间：2017年11月20日 下午12:39:07 <br/>
 * 
 * @author aivin
 * @version 1.0.0
 */
public class Client4 {

	/*
	 * 简单折扣计算
	 */
	public void calPrice(int price, int discount) {
		float knockdownPrice = price * discount / 100f;
		System.out.println("简单折扣后的价格：" + formatCurrency(knockdownPrice));

	}

	/*
	 * 复杂多折扣计算
	 */
	public void calPrice(int price, int... discounts) {
		float knockdownPrice = price;
		for (int discount : discounts) {
			knockdownPrice = knockdownPrice * discount /100f;
		}
		System.out.println("复杂折扣后的价格是：" + formatCurrency(knockdownPrice));
	}

	/**
	 * 
	 * <h4>功能：格式化成本地货币形式</h4>
	 * <h5>作者：Aivin</h5>
	 * @param knockdownPrice
	 * @return
	 */
	private String formatCurrency(float knockdownPrice) {
		return NumberFormat.getCurrencyInstance().format(knockdownPrice/100f);
	}
	
	public static void main(String[] args) {
		Client4 client = new Client4();
		//499元的货物，打75折
		client.calPrice(49900, 75);
	}

}
